﻿using System;
using System.Linq;
using System.Collections.Generic;

using SSTU.Contract.Common;
using SSTU.Model;

namespace SSTU.Contract.Facade
{
	/// <summary>
	/// Contract for facade, which provides data about all time tables.
	/// </summary>
	public interface ITimeTableFacade
	{
		/// <summary>
		/// Loads the time table for group asynchronously and invoke callback.
		/// </summary>
		/// <param name="groupId">The group identifier.</param>
		/// <param name="asyncCallback">The async callback.</param>
		void LoadTimeTableForGroupAsync(string groupId, FacadeAsyncCallback<GroupTimeTable> asyncCallback);
	}
}
